The present invention relates to a virtual machine system, and technology for sharing IO (Input/Output) devices among plural virtual servers.
A virtual machine system is widely known in which plural virtual servers are configured on one computer, and an operating system (OS) is individually run on each server. To run a large number of virtual severs in a virtual machine system, IO devices must be shared among the virtual servers.
As technology for sharing IO devices among virtual servers, a method of emulating the IO devices by software is known. A method disclosed by U.S. Pat. No. 6,496,847 provides virtual IO devices for an OS on a virtual server. A virtual machine monitor (hereinafter referred to as VMM) receives accesses to virtual IO devices and transfers them to a host OS, which centrally manages accesses to physical IO devices.
As another technology for sharing IO devices among virtual servers, a method of using arbitration hardware that arbitrates accesses to IO devices among virtual servers is known. A method disclosed by Japanese Patent Application Laid-Open Publication No. 2005-122640 monitors writing to a memory map IO (MMIO) register, and performs access to a physical IO device upon a write to a specific register.